4.3 Настройка Mirror
4.3.1 Обзор
Введение в функцию
Функция Mirror может отправлять одну или несколько копий пакетов, проходящих через порты/VLAN'ы или отправляемых и принимаемых процессором (CPU), на один или несколько указанных портов назначения. Также копии пакетов могут быть отправлены на CPU и сохранены в памяти или на флэш-накопителе.
Копии пакетов используются для анализа сети. Функция Mirror не влияет на исходный сетевой трафик.
Принцип работы
Ниже описаны понятия и терминология, связанные с настройкой Mirror:

Рисунок 4-3: Mirror
-
Mirror session
Mirror session — это связь между пунктом назначения Mirror и одним или несколькими источниками Mirror. Подробности описаны ниже.
Устройство поддерживает до 3 сеансов Mirror.
Сеансы Mirror не мешают нормальной работе коммутатора. Однако перегрузка порта назначения, например, мониторинг 100-Гбит/с порта с помощью 10-Гбит/с порта, может привести к потере пакетов. -
Mirror direction
Устройство поддерживает установку направления источника Mirror: TX, RX или BOTH.- RX (входящее Mirror) - Целью входящего Mirror (receive или ingress Mirror) является мониторинг максимально возможного количества пакетов, полученных интерфейсом-источником или VLAN, до какой-либо модификации или обработки, выполняемой коммутатором. Копия каждого полученного пакета (за исключением следующих пакетов: BPDU, LACPDU, BMGPDU, пакетов, отклонённых проверкой привязки IP-MAC для Mirror на основе VLAN, а также пакетов с ошибками CRC для Mirror на основе портов и VLAN) отправляется на порт назначения в рамках соответствующего сеанса Mirror. Вы можете мониторить серию или диапазон входящих портов или VLAN в одном сеансе Mirror. Пакеты, модифицированные в результате маршрутизации, копируются без изменений, то есть копируется оригинальный пакет. Пакеты, изменённые в результате применения качества обслуживания (QoS), например, с модификацией Differentiated Services Code Point (DSCP), копируются с изменениями. Пакеты, изменённые в результате трансляции VLAN или классификации VLAN, также копируются с внесёнными изменениями. Некоторые функции, которые могут привести к отклонению пакетов во время обработки входящего трафика, не влияют на зеркалирование. Порт назначения может получить копию пакета, даже если исходный входящий пакет был отклонён. Эти функции включают входящие списки управления доступом (ACL), фильтрацию VLAN, фильтрацию MAC-адресов, STP, управление тегами VLAN, безопасность портов и неизвестные маршрутизируемые пакеты.
- TX (исходящее Mirror) - Целью исходящего Mirror (transmit или egress Mirror) является мониторинг максимально возможного количества пакетов, отправленных интерфейсом-источником, после того как все модификации и обработка были выполнены коммутатором. Копия каждого отправленного пакета (за исключением следующих пакетов: пакетов с CPU-порта при зеркалировании на основе VLAN, пакетов Mirror при зеркалировании на основе портов и VLAN) отправляется на порт назначения в рамках соответствующего сеанса Mirror. Некоторые функции, которые могут привести к отклонению пакетов во время обработки исходящего трафика, могут также повлиять на зеркалирование.
- BOTH - Мониторинг входящих и исходящих пакетов для одного интерфейса в рамках сеанса Mirror.
-
Mirror source
Mirror source — это оригинальный сетевой трафик. Возможные типы источников:- Source port - Интерфейс уровня 2, подлежащий мониторингу. Это может быть физический порт или агрегированный порт. Участники агрегированного порта не поддерживаются.
- Source VLAN - VLAN, который требуется мониторить. Перед назначением VLAN источником необходимо создать соответствующий интерфейс.
- CPU - Мониторинг пакетов, отправляемых в CPU или принимаемых от него. Копии пакетов, отправляемые на пункт назначения Mirror, обрабатываются до применения ограничения на трафик CPU. Только первый сеанс поддерживает CPU как источник Mirror.
-
Mirror destination
Функция Mirror копирует пакеты и отправляет их в указанный пункт назначения.-
Local destination port - Физический или агрегированный порт. Характеристики:
-
Должен находиться на том же коммутаторе, что и порт-источник.
-
Не должен находиться в состоянии "shutdown".
-
Может участвовать только в одном сеансе Mirror (порт назначения в одном сеансе не может быть портом назначения во втором сеансе).
-
Не может быть портом-источником.
-
Порт не передаёт никакой трафик, кроме трафика, необходимого для сеанса Mirror.
-
Не участвует в работе spanning tree, пока активен сеанс Mirror.
-
Когда порт используется как пункт назначения Mirror, все остальные функции порта не работают до отключения конфигурации пункта назначения Mirror.
-
На порту назначения не происходит обучения адресам.
-
Реальное состояние скорости/дуплекса может не совпадать с отображаемыми значениями.
-
Multi-destination - Устройство поддерживает использование группы портов назначения для получения нескольких копий трафика. Характеристики каждого члена группы портов назначения такие же, как у одного порта назначения.
-
Remote destination - Удалённый пункт назначения Mirror — это удалённый VLAN, который имеет указанный выходной порт. Копии пакетов должны отправляться на указанный порт с добавлением тега удалённого VLAN. Удалённый пункт назначения имеет следующие характеристики:
-
Это VLAN с указанным выходным портом.
-
Диапазон номеров удалённого VLAN должен быть от 2 до 4094. Если VLAN не создан в системе, пользователь не может настроить его как удалённый VLAN для Mirror.
-
Выходной порт должен быть физическим портом. Пользователь должен вручную проверить возможность передачи пакетов Mirror через выходной порт.
-
Пакеты мониторинга получают тег с идентификатором удалённого VLAN и направляются через указанный выходной порт к устройству, связанному с сеансом Mirror.
-
Рекомендуется настроить порт назначения удалённого Mirror как порт коммутатора. Пользователь должен добавить порт назначения в удалённый VLAN, иначе пакеты Mirror не смогут быть переданы.
-
CPU destination - Отправка копий пакетов на процессор (CPU) текущего устройства. Если анализатор недоступен, пользователь может использовать CPU в качестве пункта назначения Mirror и сохранить результат для анализа пользователем или разработчиками.
-
Вы можете анализировать сетевой трафик, проходящий через порты или VLAN, используя функцию Mirror, чтобы отправить копию трафика на другой порт коммутатора, подключённый к устройству Switch Probe, другому анализатору удалённого мониторинга (RMON) или устройству безопасности. Однако, если нет доступного устройства мониторинга для захвата пакетов, использование обычного пункта назначения Mirror на порты становится невозможным.
В этом случае можно настроить CPU как пункт назначения Mirror для отправки копий трафика в CPU с целью их сохранения. Функция поддерживает CLI-команды для отображения пакетов, отправленных на зеркалирование CPU, и записи их в текстовый файл. Это очень полезный инструмент для отладки.
Функция Mirror не влияет на коммутируемый трафик исходных портов или VLAN; копии пакетов, полученных или отправленных исходными интерфейсами, направляются в CPU. Скорость ограничения трафика CPU (cpu-traffic-limit rate) может быть настроена. CPU может участвовать в качестве пункта назначения только в одном сеансе Mirror.
4.3.2 Настройка
Настройка Local port Mirror

Рисунок 4-4: Port Mirror
Задача
Скопировать пакеты с интерфейса eth-0-1 и отправить их на интерфейс eth-0-2.
Шаг 1: Вход в режим конфигурации
Switch# configure terminal
Шаг 2: Настройка порта назначения для Mirror
Switch(config)# interface eth-0-2
Switch(config-if)# no shutdown
Switch(config-if)# exit
Switch(config)# monitor session 1 destination interface eth-0-2
Шаг 3: Настройка источника для Mirror
Switch(config)# monitor session 1 source interface eth-0-1 both
Шаг 4: Выход из режима конфигурации
Switch(config)# end
Шаг 5: Проверка
Switch# show monitor session 1
Session 1
----------
Status : Valid
Type : Local Session
Source Ports :
Receive Only :
Transmit Only :
Both : eth-0-1
Source VLANs :
Receive Only :
Transmit Only :
Both :
Destination Port : eth-0-2
Настройка local VLAN Mirror
Задача
Скопировать пакеты из VLAN 10 и отправить их на интерфейс eth-0-2:
Шаг 1: Вход в режим конфигурации
Switch# configure terminal
Шаг 2: Настройка порта назначения для Mirror
Switch(config)# interface eth-0-2
Switch(config-if)# no shutdown
Switch(config-if)# exit
Switch(config)# monitor session 1 destination interface eth-0-2
Шаг 3: Вход в режим настройки VLAN и создание VLAN
Switch(config)# vlan database
Switch(config-vlan)# vlan 10
Switch(config-vlan)# exit
Шаг 4: Создание интерфейса VLAN
Switch(config)# interface vlan10
Switch(config-if)# exit
Шаг 5: Настройка источника для Mirror
Switch(config)# monitor session 1 source vlan 10 rx
Шаг 6: Выход из режима конфигурации
Switch(config)# end
Шаг 7: Проверка
Switch# show monitor session 1
Session 1
----------
Status : Valid
Type : Local Session
Source Ports :
Receive Only :
Transmit Only :
Both :
Source VLANs :
Receive Only : 10
Transmit Only :
Both :
Destination Port : eth-0-2
Настройка CPU as Mirror source
Задача
Скопировать пакеты, поступающие в CPU или отправляемые из CPU, и направить их на интерфейс eth-0-2:
Шаг 1: Вход в режим конфигурации
Switch# configure terminal
Шаг 2: Настройка порта назначения для Mirror
Switch(config)# interface eth-0-2
Switch(config-if)# no shutdown
Switch(config-if)# exit
Switch(config)# monitor session 1 destination interface eth-0-2
Шаг 3: Настройка источника для Mirror (CPU)
Switch(config)# monitor session 1 source cpu both
Шаг 4: Выход из режима конфигурации
Switch(config)# end
Шаг 5: Проверка
Switch# show monitor session 1
Session 1
----------
Status : Valid
Type : Cpu Session
Source Ports :
Receive Only :
Transmit Only :
Both : cpu
Source VLANs :
Receive Only :
Transmit Only :
Both :
Destination Port : eth-0-2
Настройка Multi-destination Mirror

Рисунок 4-5: Multi-destination Mirror
Задача
Скопировать пакеты с интерфейса eth-0-1 и отправить их на интерфейсы eth-0-2 и eth-0-3:
Шаг 1: Вход в режим конфигурации
Switch# configure terminal
Шаг 2: Настройка группы портов назначения
Switch(config)# interface eth-0-2
Switch(config-if)# no shutdown
Switch(config-if)# exit
Switch(config)# interface eth-0-3
Switch(config-if)# no shutdown
Switch(config-if)# exit
Switch(config)# monitor session 1 destination group 1
Switch(config-monitor-d-group)# member eth-0-2
Switch(config-monitor-d-group)# member eth-0-3
Switch(config-monitor-d-group)# exit
Шаг 3: Настройка источника Mirror
Switch(config)# interface eth-0-1
Switch(config-if)# no shutdown
Switch(config-if)# exit
Switch(config)# monitor session 1 source interface eth-0-1
Шаг 4: Выход из режима конфигурации
Switch(config)# end
Шаг 5: Проверка
Switch# show monitor session 1
Session 1
----------
Status : Valid
Type : Local Session
Source Ports :
Receive Only :
Transmit Only :
Both : eth-0-1
Source VLANs :
Receive Only :
Transmit Only :
Both :
Destination Ports : eth-0-2 eth-0-3
Настройка Remote Mirror

Рисунок 4-6: Remote Mirror
Если локальное устройство не может подключиться к анализатору напрямую, пользователь может выбрать удалённое зеркалирование, чтобы отправлять копии пакетов с указанным тегом VLAN. Удалённое устройство может выделять пакеты с этим VLAN для анализа.
Пример ниже копирует пакеты с порта eth-0-1 коммутатора Switch1 и отправляет их на Switch2 через порт eth-0-2 коммутатора Switch1. Switch2 затем передаёт эти пакеты анализатору.
Конфигурация Switch1:
Шаг 1: Войти в режим конфигурации
Switch# configure terminal
Шаг 2: Настроить назначение Mirror
Switch(config)# vlan database
Switch(config-vlan)# vlan 15
Switch(config-vlan)# exit
Switch(config-if)# exit
Switch(config)# interface eth-0-2
Switch(config-if)# no shutdown
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 15
Switch(config-if)# exit
Switch(config)# monitor session 1 destination remote vlan 15 interface eth-0-2
Шаг 3: Указать источник Mirror
Switch(config)# interface eth-0-1
Switch(config-if)# no shutdown
Switch(config)# monitor session 1 source interface eth-0-1 both
Шаг 4: Выйти из режима конфигурации
Switch(config)# end
Шаг 5: Проверка
SwitchA# show monitor session 1
Session 1
----------
Status : Valid
Type : Remote Session
Source Ports :
Receive Only :
Transmit Only :
Both : eth-0-1
Source VLANs :
Receive Only :
Transmit Only :
Both :
Destination Port : eth-0-2
Destination remote VLAN : 15
Конфигурация Switch2:
Для отправки пакетов на анализатор через порт eth-0-2 используйте один из следующих методов:
Метод 1: Использование VLAN 15 как источника Mirror, eth-0-2 как назначения
Switch# configure terminal
Switch(config)# vlan database
Switch(config-vlan)# vlan 15
Switch(config-vlan)# exit
Switch(config)# interface vlan15
Switch(config-if)# exit
Switch(config)# interface eth-0-2
Switch(config-if)# no shutdown
Switch(config)# interface eth-0-1
Switch(config-if)# no shutdown
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 15
Switch(config-if)# exit
Switch(config)# monitor session 1 destination interface eth-0-2
Switch(config)# monitor session 1 source vlan 15 rx
Switch(config)# end
Метод 2: Добавление обоих портов в один VLAN (15) для flood in vlan пакетов в этом VLAN
Switch# configure terminal
Switch(config)# no spanning-tree enable
Switch(config)# vlan database
Switch(config-vlan)# vlan 15
Switch(config-vlan)# exit
Switch(config)# interface eth-0-2
Switch(config-if)# no shutdown
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan 15
Switch(config)# interface eth-0-1
Switch(config-if)# no shutdown
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 15
Switch(config-if)# exit
В этой конфигурации тег VLAN удаляется, так как eth-0-2 настроен как access-порт.
Метод 3: Flood in VLAN с сохранением тега VLAN 15
Если необходимо сохранить тег VLAN 15, порт eth-0-2 должен быть настроен как trunk (остальные настройки такие же, как в методе 2)
Switch(config)# interface eth-0-2
Switch(config-if)# no shutdown
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 15
Настройка CPU Mirror Dest

Рисунок 4-7: Mirror to cpu
Шаг 1: Войти в режим конфигурации
Switch# configure terminal
Шаг 2: Настроить назначение Mirror
Switch(config)# monitor session 1 destination cpu
Установить размер буфера и скорость на CPU:
Switch(config)# monitor cpu set packet buffer 100
Switch(config)# cpu-traffic-limit reason Mirror-to-cpu rate 128
Шаг 3: Указать источник Mirror
Switch(config)# monitor session 1 source interface eth-0-1 both
Шаг 4: Выйти из режима конфигурации
Switch(config)# end
Дополнительные шаги
Включить или отключить запись пакетов во флеш-файлы:
Switch# monitor cpu capture packet start
Switch# monitor cpu capture packet stop
Конвертировать файлы из формата *.txt в *.pcap:
Switch# pcap convert flash:/Mirror/MirCpuPkt-2016-02-05-18-31-13.txt flash:/MirCpuPkt-2016-02-05.pcap
Установить действие после переполнения буфера пакетов:
- "drop" - отбросить последние пакеты.
- "replace" - заменить старые пакеты.
Switch(config)# monitor cpu capture strategy drop
Switch(config)# monitor cpu capture strategy replace
Шаг 5: Проверка
Пример настройки сессии Mirror 1 для мониторинга трафика порта источника на CPU. Используйте команду show monitor session для просмотра конфигурации:
Switch# show monitor session 1
DUT1# show monitor session 1
Session 1
----------
Status : Valid
Type : Cpu Session
Source Ports :
Receive Only :
Transmit Only :
Both : eth-0-1
Source VLANs :
Receive Only :
Transmit Only :
Both :
Destination Port : cpu
Пример отображения пакетов Mirror to cpu:
Switch# show monitor cpu packet all
-----------------show all Mirror to cpu packet info-----------------
packet: 1
Source port: eth-0-1
MACDA:264e.ad52.d800, MACSA:0000.0000.1111
vlan tag:100
IPv4 Packet, IP Protocol is 0
IPDA:3.3.3.3, IPSA: 10.0.0.2
Data length: 47
Data:
264e ad52 d800 0000 0000 1111 8100 0064
0800 4500 001d 0001 0000 4000 6ad9 0a00
0002 0303 0303 6365 6e74 6563 796f 75
Пример отображения размера буфера Mirror:
Switch# show monitor cpu packet buffer
--------------------show packet buffer size ---------------------
The Mirror-to-cpu packet buffer size of user set is: 100
Пример отображения лимита трафика Mirror to cpu:
Switch# show cpu traffic-limit | include Mirror-to-cpu
Mirror-to-cpu 128 0
Пример отображения файлов во флеш-памяти:
Switch# ls flash:/Mirror
Directory of flash:/Mirror
total 8
-rw-r----- 1 2287 Dec 23 01:16 MirCpuPkt-2016-12-23-01-15-54.txt
-rw-r----- 1 2568 Jan 3 11:41 MirCpuPkt-2017-01-03-11-41-33.txt
14.8T bytes total (7.9T bytes free)
Switch# more flash:/Mirror/ MirCpuPkt-2017-01-03-11-41-33.txt
sequence srcPort
1 eth-0-1
++++++++1483443444:648884
8c 1d cd 93 51 00 00 00 00 00 11 11 08 00 45 00
00 26 00 01 00 00 40 00 72 d0 01 01 01 01 03 03
03 03 63 65 6e 74 65 63 79 6f 75 63 65 6e 74 65
63 79 6f 75
--------
sequence srcPort
2 eth-0-1
++++++++1483443445:546440
8c 1d cd 93 51 00 00 00 00 00 11 11 08 00 45 00
00 26 00 01 00 00 40 00 72 d0 01 01 01 01 03 03
03 03 63 65 6e 74 65 63 79 6f 75 63 65 6e 74 65
63 79 6f 75
Пример отображения файлов во флеш-памяти. Файлы формата .pcap можно открыть в приложениях для анализа пакетов, таких как Wireshark. Для загрузки файлов обратитесь к разделам "ftp" и "tftp".:
Switch#ls flash:/Mirror
Directory of flash:/Mirror
total 12
-rw-r----- 1 2287 Dec 23 01:16 MirCpuPkt-2016-12-23-01-15-54.txt
-rw-r----- 1 2568 Jan 3 11:41 MirCpuPkt-2017-01-03-11-41-33.txt
-rw-r--r-- 1 704 Jan 3 13:07 test.pcap
14.8T bytes total (7.9T bytes free)
Пример отображения действий при переполнении буфера:
Switch# show monitor cpu capture strategy
The capture strategy of cpu Mirror is: replace (add new packet and remove oldest
packet when buffer is full)